package com.idp.app.controller;

import com.idp.app.dto.*;
import com.idp.app.service.SyAjxxService;
import com.idp.common.base.BaseController;
import com.idp.common.model.PageModel;
import com.idp.common.model.ResultModel;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**
 * 大屏服务-各个主题
 *
 * @author Simon
 */
@Api(tags = "主题页面-大屏服务")
@RestController
@RequestMapping("/zt/")
public class ScreenZtController extends BaseController {

    @Autowired
    private SyAjxxService syAjxxService;

    /**
     * 主题-时间分布
     *
     * @return
     */
    @ApiOperation(value = "主题-时间分布-入参：lx（主题的名称，例如：平安建设、检察护企、监护民生）,如果查所有数据，则将lx字段传个空字符串")
    @PostMapping("getAjslByDate")
    public ResultModel<List<SyAjxxDateDto>> getAjslByDate(@RequestBody ScreenCommonDto screenCommonDto) {
        return ResultModel.success(syAjxxService.getAjslByDate(screenCommonDto));
    }

    /**
     * 主题-空间分布
     *
     * @return
     */
    @ApiOperation(value = "主题-空间分布-入参：lx（主题的名称，例如：平安建设、检察护企、监护民生）,如果查所有数据，则将lx字段传个空字符串")
    @PostMapping("getZtKjfb")
    public ResultModel<List<SyAjxxKjfbDto>> getZtKjfb(@RequestBody ScreenCommonDto screenCommonDto) {
        return ResultModel.success(syAjxxService.getZtKjfb(screenCommonDto));
    }

    /**
     * 主题-类别分布
     *
     * @return
     */
    @ApiOperation(value = "主题-类别分布-入参：lx（主题的名称，例如：平安建设、检察护企、监护民生）,如果查所有数据，则将lx字段传个空字符串")
    @PostMapping("getZtAjlb")
    public ResultModel<List<SyAjxxKjfbDto>> getZtAjlb(@RequestBody ScreenCommonDto screenCommonDto) {
        return ResultModel.success(syAjxxService.getZtAjlb(screenCommonDto));
    }

    /**
     * 数据列表
     *
     * @param syAjxxSearchDto
     * @return
     */
    @ApiOperation(value = "主题-数据列表-入参：开始时间(yyyy-MM-dd)、结束时间(yyyy-MM-dd)、区域编码、案件类别")
    @PostMapping("getSjlbList")
    public ResultModel<List<SyAjxxDto>> getSjlbList(@RequestBody SyAjxxSearchDto syAjxxSearchDto) {
        return ResultModel.success(syAjxxService.getSjlbList(syAjxxSearchDto));
    }

}
